distributed system architecture earns increasingly wide applications along with the constant development of computer and network technologies. In a distributed invocation procedure, an invocation requester in some scenarios can not obtain a real execution object directly and instead an invocation request of the requester has to be processed with a readily accessible intermediate object (broker). For example, a coarse-grain request of the requester sometimes can be mapped to a fine-grain object with provision of an execution (that is, the invocation request of the requester is distributed to the target object with real provision of an execution) or several real execution objects can be masked with a readily accessible fixed object. The following two processing methods are typically adopted at present.
The first method generally includes the following steps.
1. The requester initiates a request to the intermediate object for obtaining an object reference;
2. The intermediate object selects a real execution object and returns the reference to the requester
3. The requester initiates a request to the real execution object in a stipulated way;
4. The real execution object returns a result to the requester.
The second method generally includes the following steps.
1. The requester initiates an invocation request to the intermediate object
2. The intermediate object proceeds with invoking a specific real execution object;
3. The real execution object returns a result to the intermediate object
4. The intermediate object returns the result to the requester.
The inventors have identified from a search during the implementation of the invention that each of the objects (including the requester, the intermediate object and the real execution object) interact over a distributed service platform in the above two methods. In the first method, one service of the requester has to be mapped to two requests, that is, the request for obtaining the object reference and the real processing request, which may result in degraded performance and increased implementation complexity. In the second method, since the intermediate object initiates the invocation of the real execution object, both the transmission of the request and the return of the response result have to be enabled through the intermediate object, which may result in a lower request efficiency; and the intermediate object has to implement the interfaces of all real execution objects, which may result in higher difficulty in development.